﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;

namespace StarWarsGame
{
    public interface IEnemy
    {
        void UpdatePosition(GameTime gameTime, List<Player> players);

        void Fire(GameTime gameTime);

        //These metods have different parameters and therefore just shown as comments
        //since they might be needed for every enemy

        //void MoveForward(ref Vector3 position, Quaternion rotationQuat, float speed);

        //void Draw(Model enemyModel, Matrix[] enemyModelTransforms, Quaternion enemyRotation, Vector3 enemyPosition);

        Game Game
        {
            get;
            set;
        }

        float MoveSpeed
        {
            get;
            set;
        }

        float RotationSpeed
        {
            get;
            set;
        }

        Model EnemyModel
        {
            get;
            set;
        }

        Quaternion Rotation
        {
            get;
            set;
        }                     

        Vector3 Position
        {
            get;
            set;
        }

    }
}
